/**
 * interface和type的区别
 * 我们会发现interface和type都可以用来定义对象类型，那么在开发中定义对象类型时，到底应该选择哪一个呢？
 * - 如果是定义非对象类型，通常推荐使用type,比如Direction、Alignment、一些Function;
 * - 如果是定义类型对象，那么他们是有区别的：
 *      - interface 可以重复的对某个接口来定义属性和方法
 *      - 而type定义的是别名，别名是不能重复的
 */
interface IFoo {
    name: string,
    swimming: () => void
}

interface IFoo {
    eating: () => void
}

const foo: IFoo = {
    name: 'n1',
    swimming: () => { },
    eating: () => { }
}

// 两者综合起来

// document.getElementById('app') as HTMLDivElement
// window.addEventListener

// 应用
// 会将age添加到Window
interface Window{
    age:number
}
console.log(window.age);

// 比较推荐interface
export {}